[INFO] cloning repository https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGhosts-Protocol-Pvt-Ltd%2FDragonKeep", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGhosts-Protocol-Pvt-Ltd%2FDragonKeep'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 275b7ae6b8388deab6889a7eb6ca6c1cc23f377c
[INFO] fixing Ghosts-Protocol-Pvt-Ltd/DragonKeep against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGhosts-Protocol-Pvt-Ltd%2FDragonKeep" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep
[INFO] finished tweaking git repo https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep
[INFO] tweaked toml for git repo https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Ghosts-Protocol-Pvt-Ltd/DragonKeep already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded papergrid v0.14.0
[INFO] [stderr]   Downloaded tabled_derive v0.10.0
[INFO] [stderr]   Downloaded tabled v0.18.0
[INFO] [stderr]   Downloaded libbpf-rs v0.24.8
[INFO] [stderr]   Downloaded vsprintf v2.0.0
[INFO] [stderr]   Downloaded libbpf-cargo v0.24.8
[INFO] [stderr]   Downloaded cargo_metadata v0.15.4
[INFO] [stderr]   Downloaded ferrisetw v1.2.0
[INFO] [stderr]   Downloaded libbpf-sys v1.7.0+v1.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d
[INFO] running `Command { std: "docker" "start" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]     Checking unicode-truncate v2.0.1
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking kasuari v0.4.12
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]     Checking lru v0.16.4
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking num-conv v0.2.1
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking line-clipping v0.3.7
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking rustls-webpki v0.103.12
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking bytecount v0.6.9
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking papergrid v0.14.0
[INFO] [stderr]     Checking inotify v0.10.2
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking notify-types v1.0.1
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]    Compiling tabled_derive v0.10.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking filetime v0.2.27
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling dragonkeep v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking tabled v0.18.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking notify v7.0.0
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking sysinfo v0.33.1
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking glob v0.3.3
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking colored v3.1.1
[INFO] [stdout] error[E0433]: cannot find module or crate `dragonkeep` in this scope
[INFO] [stdout]  --> examples/test_bridge.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use dragonkeep::engine::{memory_bridge, Finding};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `dragonkeep`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `dragonkeep`, use `cargo add dragonkeep` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dragonkeep` (example "test_bridge") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variant `PCI_DSS` should have an upper camel case name
[INFO] [stdout]   --> src/compliance.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PCI_DSS,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `PciDss`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/queue.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{anyhow, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Severity`
[INFO] [stdout]    --> src/report.rs:370:34
[INFO] [stdout]     |
[INFO] [stdout] 370 |     use crate::engine::{Finding, Severity};
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Severity`
[INFO] [stdout]    --> src/community.rs:456:34
[INFO] [stdout]     |
[INFO] [stdout] 456 |     use crate::engine::{Finding, Severity};
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PCI_DSS` should have an upper camel case name
[INFO] [stdout]   --> src/compliance.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PCI_DSS,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `PciDss`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Severity`
[INFO] [stdout]     --> src/compliance.rs:1430:34
[INFO] [stdout]      |
[INFO] [stdout] 1430 |     use crate::engine::{Finding, Severity};
[INFO] [stdout]      |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/queue.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{anyhow, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> src/engine/proof.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         60..79 => Finding::info(title),
[INFO] [stdout]    |         ------ this could appear to continue range `40_u32..59_u32`, but `59_u32` isn't matched by either of them
[INFO] [stdout] 52 |         40..59 => Finding::warning(title),
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `59_u32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `40_u32..=59_u32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_contiguous_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> src/engine/proof.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         80..=100 => Finding::pass(title),
[INFO] [stdout]    |         -------- this could appear to continue range `60_u32..79_u32`, but `79_u32` isn't matched by either of them
[INFO] [stdout] 51 |         60..79 => Finding::info(title),
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `79_u32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `60_u32..=79_u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> src/engine/proof.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         60..79 => Finding::info(title),
[INFO] [stdout]    |         ------ this could appear to continue range `40_u32..59_u32`, but `59_u32` isn't matched by either of them
[INFO] [stdout] 52 |         40..59 => Finding::warning(title),
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `59_u32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `40_u32..=59_u32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_contiguous_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> src/engine/proof.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         80..=100 => Finding::pass(title),
[INFO] [stdout]    |         -------- this could appear to continue range `60_u32..79_u32`, but `79_u32` isn't matched by either of them
[INFO] [stdout] 51 |         60..79 => Finding::info(title),
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `79_u32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `60_u32..=79_u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_VAR` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | const ENV_VAR: &str = "DRAGONKEEP_MEMORY_BRIDGE";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_TOKEN` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const ENV_TOKEN: &str = "PD_CONTROL_TOKEN";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_HOST` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const ENV_HOST: &str = "DRAGONKEEP_HOST_TARGET";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DefensiveFindingPayload` is never constructed
[INFO] [stdout]   --> src/engine/memory_bridge.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct DefensiveFindingPayload<'a> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_endpoint` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn bridge_endpoint() -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_target` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn host_target() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_finding` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:73:14
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub async fn push_finding(finding: &Finding) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_batch` is never used
[INFO] [stdout]    --> src/engine/memory_bridge.rs:120:14
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub async fn push_batch(findings: &[Finding]) -> usize {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bridge` is never used
[INFO] [stdout]    --> src/engine/memory_bridge.rs:136:14
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub async fn check_bridge() -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/shield.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `forward` is never used
[INFO] [stdout]   --> src/engine/shield.rs:73:14
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub async fn forward(findings: &[Finding]) -> Result<usize> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `auto_respond` is never used
[INFO] [stdout]   --> src/engine/shield.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn auto_respond(finding: &Finding) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schedule_dir` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn schedule_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `last_scan_marker` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn last_scan_marker() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `touch_last_scan` is never used
[INFO] [stdout]    --> src/engine/patrol.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn touch_last_scan() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProofSummary` is never constructed
[INFO] [stdout]   --> src/engine/proof.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct ProofSummary {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `coverage_pct` is never used
[INFO] [stdout]   --> src/engine/proof.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl ProofSummary {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 28 |     pub fn coverage_pct(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/proof.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn scan(_config: &Config, prior: &[Finding]) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `summarize` is never used
[INFO] [stdout]   --> src/engine/proof.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn summarize(findings: &[Finding]) -> ProofSummary {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_markdown` is never used
[INFO] [stdout]    --> src/engine/proof.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub fn render_markdown(findings: &[Finding]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `playbooks_dir` is never used
[INFO] [stdout]   --> src/engine/respond.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn playbooks_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/respond.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Decoy` is never constructed
[INFO] [stdout]   --> src/engine/honeypot.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Decoy {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DECOYS` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const DECOYS: &[Decoy] = &[
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `expand` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn expand(path: &str) -> PathBuf {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:66:14
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_decoys` is never used
[INFO] [stdout]    --> src/engine/honeypot.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn list_decoys() -> Vec<(&'static str, &'static str, PathBuf)> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_decoy` is never used
[INFO] [stdout]    --> src/engine/honeypot.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn is_decoy(path: &Path) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/swarm.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEV_URL` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const KEV_URL: &str = "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kev_cache_path` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn kev_cache_path() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:34:14
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `refresh_kev` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub async fn refresh_kev() -> Result<usize> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_known_exploited` is never used
[INFO] [stdout]    --> src/engine/oracle.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn is_known_exploited(cve: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/antivirus.rs:252:8
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/quarantine.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/engine/ioc.rs:97:8
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessEvent` is never constructed
[INFO] [stdout]   --> src/engine/behavioral.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct ProcessEvent {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_cmdline` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn read_cmdline(pid: u32) -> Option<String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_status` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn read_status(pid: u32) -> Option<(u32, u32)> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn evaluate(cmdline: &str, parent_cmd: &str) -> (Vec<String>, u32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sweep` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn sweep() -> Vec<ProcessEvent> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:193:4
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn persist(evt: &ProcessEvent) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TelemetryEvent` is never constructed
[INFO] [stdout]   --> src/engine/telemetry.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct TelemetryEvent {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hostname` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn hostname() -> String {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `emit` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn emit(source: &str, category: &str, severity: &str, message: &str, data: serde_json::Value) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn persist(evt: &TelemetryEvent) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tail` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn tail(n: usize) -> Vec<TelemetryEvent> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockAction` is never constructed
[INFO] [stdout]   --> src/engine/autoblock.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct BlockAction {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn record(action: BlockAction) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kill_pid` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn kill_pid(pid: u32, reason: &str) -> BlockAction {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `net_block` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn net_block(target: &str, reason: &str) -> BlockAction {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_actions` is never used
[INFO] [stdout]    --> src/engine/autoblock.rs:182:8
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub fn list_actions() -> Vec<BlockAction> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/autoblock.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PlatformKind` is never used
[INFO] [stdout]   --> src/engine/platform.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum PlatformKind {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect` is never used
[INFO] [stdout]   --> src/engine/platform.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn detect() -> PlatformKind {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsCapabilities` is never constructed
[INFO] [stdout]   --> src/engine/platform.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct OsCapabilities {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capabilities` is never used
[INFO] [stdout]   --> src/engine/platform.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn capabilities() -> OsCapabilities {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vault_dir` is never used
[INFO] [stdout]   --> src/engine/platform.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn vault_dir() -> std::path::PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `label` is never used
[INFO] [stdout]   --> src/engine/platform.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn label() -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EbpfEvent` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct EbpfEvent {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `supported` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn supported() -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_ebpf.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryHit` is never constructed
[INFO] [stdout]   --> src/engine/memory_scan.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct MemoryHit {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_REGION_BYTES` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const MAX_REGION_BYTES: u64 = 16 * 1024 * 1024;  // 16 MB cap per memory region
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_TOTAL_BYTES` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const MAX_TOTAL_BYTES:  u64 = 256 * 1024 * 1024; // 256 MB cap per scan
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memory_rules` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn memory_rules() -> Vec<(&'static str, regex::bytes::Regex)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_maps` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn read_maps(pid: u32) -> Vec<(u64, u64, String)> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_pid` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub fn scan_pid(pid: u32) -> Vec<MemoryHit> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn persist(hit: &MemoryHit) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sweep_all` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn sweep_all() -> Vec<MemoryHit> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:160:8
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KERNEL_PROCESS_GUID` is never used
[INFO] [stdout]   --> src/engine/behavioral_etw.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const KERNEL_PROCESS_GUID: &str = "22fb2cd6-0e7b-422b-a0c7-2fad1fd0e716";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_elevated` is never used
[INFO] [stdout]   --> src/engine/behavioral_etw.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn is_elevated() -> bool { false }
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_etw.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MlAnomaly` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct MlAnomaly {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WINDOW_SIZE` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:44:7
[INFO] [stdout]    |
[INFO] [stdout] 44 | const WINDOW_SIZE: usize = 1000;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FLAG_THRESHOLD` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const FLAG_THRESHOLD: f64 = 4.0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hostname` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn hostname() -> String {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bigrams` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn bigrams(cmdline: &str) -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Baseline` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct Baseline {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BASELINE` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | static BASELINE: Mutex<Option<Baseline>> = Mutex::new(None);
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `baseline_load_if_empty` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn baseline_load_if_empty() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `score` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn score(cmdline: &str) -> (f64, Vec<String>) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `observe` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn observe(cmdline: &str) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_and_record` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn evaluate_and_record(pid: u32, cmdline: &str) -> Option<MlAnomaly> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn persist(a: &MlAnomaly) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `FeatureNotAvailable` is never constructed
[INFO] [stdout]   --> src/license.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub enum LicenseError {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 82 |     FeatureNotAvailable(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LicenseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_license_key` is never used
[INFO] [stdout]    --> src/license.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub fn generate_license_key() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_keypair` is never used
[INFO] [stdout]    --> src/license.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub fn generate_keypair() -> LicenseResult<(Vec<u8>, Vec<u8>)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_license` is never used
[INFO] [stdout]    --> src/license.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub fn sign_license(license: &License, pkcs8_private_key: &[u8]) -> LicenseResult<SignedLicense> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `features_for_tier` is never used
[INFO] [stdout]    --> src/license.rs:331:8
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn features_for_tier(tier: LicenseTier) -> Vec<&'static str> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_VAR` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | const ENV_VAR: &str = "DRAGONKEEP_MEMORY_BRIDGE";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_TOKEN` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const ENV_TOKEN: &str = "PD_CONTROL_TOKEN";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENV_HOST` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const ENV_HOST: &str = "DRAGONKEEP_HOST_TARGET";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DefensiveFindingPayload` is never constructed
[INFO] [stdout]   --> src/engine/memory_bridge.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct DefensiveFindingPayload<'a> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_endpoint` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn bridge_endpoint() -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_target` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn host_target() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_finding` is never used
[INFO] [stdout]   --> src/engine/memory_bridge.rs:73:14
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub async fn push_finding(finding: &Finding) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_batch` is never used
[INFO] [stdout]    --> src/engine/memory_bridge.rs:120:14
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub async fn push_batch(findings: &[Finding]) -> usize {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bridge` is never used
[INFO] [stdout]    --> src/engine/memory_bridge.rs:136:14
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub async fn check_bridge() -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/shield.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `forward` is never used
[INFO] [stdout]   --> src/engine/shield.rs:73:14
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub async fn forward(findings: &[Finding]) -> Result<usize> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `auto_respond` is never used
[INFO] [stdout]   --> src/engine/shield.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn auto_respond(finding: &Finding) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schedule_dir` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn schedule_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `last_scan_marker` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn last_scan_marker() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/patrol.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `touch_last_scan` is never used
[INFO] [stdout]    --> src/engine/patrol.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn touch_last_scan() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProofSummary` is never constructed
[INFO] [stdout]   --> src/engine/proof.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct ProofSummary {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `coverage_pct` is never used
[INFO] [stdout]   --> src/engine/proof.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl ProofSummary {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 28 |     pub fn coverage_pct(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/proof.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn scan(_config: &Config, prior: &[Finding]) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `summarize` is never used
[INFO] [stdout]   --> src/engine/proof.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn summarize(findings: &[Finding]) -> ProofSummary {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_markdown` is never used
[INFO] [stdout]    --> src/engine/proof.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub fn render_markdown(findings: &[Finding]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `playbooks_dir` is never used
[INFO] [stdout]   --> src/engine/respond.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn playbooks_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/respond.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Decoy` is never constructed
[INFO] [stdout]   --> src/engine/honeypot.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Decoy {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DECOYS` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const DECOYS: &[Decoy] = &[
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `expand` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn expand(path: &str) -> PathBuf {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/honeypot.rs:66:14
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_decoys` is never used
[INFO] [stdout]    --> src/engine/honeypot.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn list_decoys() -> Vec<(&'static str, &'static str, PathBuf)> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_decoy` is never used
[INFO] [stdout]    --> src/engine/honeypot.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn is_decoy(path: &Path) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/swarm.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEV_URL` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const KEV_URL: &str = "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kev_cache_path` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn kev_cache_path() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:34:14
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub async fn scan(_config: &Config) -> Result<Vec<Finding>> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `refresh_kev` is never used
[INFO] [stdout]   --> src/engine/oracle.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub async fn refresh_kev() -> Result<usize> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_known_exploited` is never used
[INFO] [stdout]    --> src/engine/oracle.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn is_known_exploited(cve: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/antivirus.rs:252:8
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/quarantine.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/engine/ioc.rs:97:8
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessEvent` is never constructed
[INFO] [stdout]   --> src/engine/behavioral.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct ProcessEvent {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_cmdline` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn read_cmdline(pid: u32) -> Option<String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_status` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn read_status(pid: u32) -> Option<(u32, u32)> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate` is never used
[INFO] [stdout]   --> src/engine/behavioral.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn evaluate(cmdline: &str, parent_cmd: &str) -> (Vec<String>, u32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sweep` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn sweep() -> Vec<ProcessEvent> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:193:4
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn persist(evt: &ProcessEvent) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TelemetryEvent` is never constructed
[INFO] [stdout]   --> src/engine/telemetry.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct TelemetryEvent {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hostname` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn hostname() -> String {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `emit` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn emit(source: &str, category: &str, severity: &str, message: &str, data: serde_json::Value) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn persist(evt: &TelemetryEvent) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tail` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn tail(n: usize) -> Vec<TelemetryEvent> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/engine/telemetry.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockAction` is never constructed
[INFO] [stdout]   --> src/engine/autoblock.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct BlockAction {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn record(action: BlockAction) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kill_pid` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn kill_pid(pid: u32, reason: &str) -> BlockAction {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `net_block` is never used
[INFO] [stdout]   --> src/engine/autoblock.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn net_block(target: &str, reason: &str) -> BlockAction {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_actions` is never used
[INFO] [stdout]    --> src/engine/autoblock.rs:182:8
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub fn list_actions() -> Vec<BlockAction> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/autoblock.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PlatformKind` is never used
[INFO] [stdout]   --> src/engine/platform.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum PlatformKind {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect` is never used
[INFO] [stdout]   --> src/engine/platform.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn detect() -> PlatformKind {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsCapabilities` is never constructed
[INFO] [stdout]   --> src/engine/platform.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct OsCapabilities {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capabilities` is never used
[INFO] [stdout]   --> src/engine/platform.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn capabilities() -> OsCapabilities {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vault_dir` is never used
[INFO] [stdout]   --> src/engine/platform.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn vault_dir() -> std::path::PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `label` is never used
[INFO] [stdout]   --> src/engine/platform.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn label() -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EbpfEvent` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct EbpfEvent {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `supported` is never used
[INFO] [stdout]   --> src/engine/behavioral_ebpf.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn supported() -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_ebpf.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryHit` is never constructed
[INFO] [stdout]   --> src/engine/memory_scan.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct MemoryHit {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_REGION_BYTES` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const MAX_REGION_BYTES: u64 = 16 * 1024 * 1024;  // 16 MB cap per memory region
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_TOTAL_BYTES` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const MAX_TOTAL_BYTES:  u64 = 256 * 1024 * 1024; // 256 MB cap per scan
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memory_rules` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn memory_rules() -> Vec<(&'static str, regex::bytes::Regex)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_maps` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn read_maps(pid: u32) -> Vec<(u64, u64, String)> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_pid` is never used
[INFO] [stdout]   --> src/engine/memory_scan.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub fn scan_pid(pid: u32) -> Vec<MemoryHit> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn persist(hit: &MemoryHit) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sweep_all` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn sweep_all() -> Vec<MemoryHit> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/memory_scan.rs:160:8
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KERNEL_PROCESS_GUID` is never used
[INFO] [stdout]   --> src/engine/behavioral_etw.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const KERNEL_PROCESS_GUID: &str = "22fb2cd6-0e7b-422b-a0c7-2fad1fd0e716";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_elevated` is never used
[INFO] [stdout]   --> src/engine/behavioral_etw.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn is_elevated() -> bool { false }
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_etw.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MlAnomaly` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct MlAnomaly {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WINDOW_SIZE` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:44:7
[INFO] [stdout]    |
[INFO] [stdout] 44 | const WINDOW_SIZE: usize = 1000;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FLAG_THRESHOLD` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const FLAG_THRESHOLD: f64 = 4.0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dragonkeep_dir` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn dragonkeep_dir() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_iso` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn now_iso() -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hostname` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn hostname() -> String {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bigrams` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn bigrams(cmdline: &str) -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Baseline` is never constructed
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct Baseline {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BASELINE` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | static BASELINE: Mutex<Option<Baseline>> = Mutex::new(None);
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `baseline_load_if_empty` is never used
[INFO] [stdout]   --> src/engine/behavioral_ml.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn baseline_load_if_empty() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `score` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn score(cmdline: &str) -> (f64, Vec<String>) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `observe` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn observe(cmdline: &str) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_and_record` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn evaluate_and_record(pid: u32, cmdline: &str) -> Option<MlAnomaly> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn persist(a: &MlAnomaly) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/engine/behavioral_ml.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn run() -> Vec<Finding> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `FeatureNotAvailable` is never constructed
[INFO] [stdout]   --> src/license.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub enum LicenseError {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 82 |     FeatureNotAvailable(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LicenseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d", kill_on_drop: false }`
[INFO] [stdout] 6d7557ad7ed7eb6a1843fac03589102bf38adaca50dc1181992c816f30d0540d
